﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MSH.Common.Classes
{
    /// <summary>
    /// Enumeratie die aangeeft of het registreren gelukt is
    /// </summary>
    public enum RegisterResultEnum
    {
        Success,
        Failure
    }

    /// <summary>
    /// Enumeratie die het geslacht aangeeft
    /// </summary>
    public enum GenderEnum
    {
        Male,
        Female,
        Unknown
    }

    /// <summary>
    /// Enumeratie die aangeeft of het inloggen gelukt is
    /// </summary>
    public enum LoginResultEnum
    {
        Success,
        Failure,
        NotActivated,
        NotActivatedAndExpired
    }

    /// <summary>
    /// Enumeratie die aangeeft of het opnieuw zenden van de activatiecode gelukt is
    /// </summary>
    public enum ResendActivationResultEnum
    {
        Success,
        RetriesExceeded,
        AlreadyActivated,
        Failure
    }

    /// <summary>
    /// Enumeratie die aangeeft of het activeren gelukt is
    /// </summary>
    public enum ActivationResultEnum
    {
        Success,
        Invalid,
        AlreadyActivated
    }

    /// <summary>
    /// Enumeratie die aangeeft welk mobiel platform er gebruikt word
    /// </summary>
    public enum MobilePhoneTypeEnum
    {
        WindowsPhone7,
        Other
    }

    /// <summary>
    /// Enumeratie die aangeeft of het token nog valide is
    /// </summary>
    public enum TokenValidationResultEnum
    {
        Valid,
        Invalid
    }

    /// <summary>
    /// Enumeratie die aangeeft of het toevoegen van een vriend gelukt is
    /// </summary>
    public enum AddFriendResultEnum
    {
        Succes,
        UserNotExists,
        FriendAlreadyRegistered
    }

    /// <summary>
    /// Enumeratie die aangeeft of blokkeren van een vriend gelukt is
    /// </summary>
    public enum BlockFriendResultEnum
    {
        Succes,
        UserNotExists,
        NotAFriend,
        FriendAlreadyBlocked
    }

    /// <summary>
    /// Enumeratie die aangeeft of het deblokkeren van een vriend gelukt is
    /// </summary>
    public enum UnblockFriendResultEnum
    {
        Succes,
        UserNotExists,
        NotAFriend,
        FriendNotBlocked
    }

    /// <summary>
    /// Enumeratie die aangeeft of het accepteren van een vriendverzoek gelukt is
    /// </summary>
    public enum AcceptFriendInvitationResultEnum
    {
        Succes,
        AlreadyAccepted,
        NoOpenInvitation,
        UserNotExists
    }

    /// <summary>
    /// Enumeratie die aangeeft of het weigeren van een vriendverzoek gelukt is
    /// </summary>
    public enum DeclineFriendInvitationResultEnum
    {
        Succes,
        AlreadyAccepted,
        NoOpenInvitation,
        UserNotExists
    }

    /// <summary>
    /// Enumeratie die aangeeft of het verwijderen van een vriend gelukt is
    /// </summary>
    public enum RemoveFriendResultEnum
    {
        Succes,
        UserNotExists,
        UserIsNotAFriend
    }

    /// <summary>
    /// Enumeratie die de privacy instelling aangeeft
    /// </summary>
    public enum PrivacyEnum
    {
        Private,
        Friends,
        Public
    }

    /// <summary>
    /// Enumeratie die aangeeft of het toevoegen van een vriend aan de hand van zijn mobiele telefoonnummer gelukt is
    /// </summary>
    public enum AddFriendByPhoneNumberResultEnum
    {
        Succes,
        UserNotExists,
        FriendAlreadyRegistered
    }

    /// <summary>
    /// Enumeratie die aangeeft of het toevoegen van een notificatie voor als er een vriend in de buurt is gelukt is
    /// </summary>
    public enum AddFriendNotificationResultEnum
    {
        Succes,
        UserNotExists,
        NotificationAlreadyRegistred,
        LatOrLonIsEmpty,
        RangeToBig
    }

    /// <summary>
    /// Enumeratie die aangeeft of het aanvragen van een activatiecode voor een nieuw wachtwoord gelukt is
    /// </summary>
    public enum ChangePasswordRequestResultEnum
    {
        UserNotExists,
        Succes,
        ToManyRequests,
        IncorrectMobilePhoneNumber,
        SamePassword
    }

    /// <summary>
    /// Enumeratie die aangeeft of het activeren van het nieuwe wachtwoord gelukt is
    /// </summary>
    public enum ActivatePasswordRequestResultEnum
    {
        UserNotExists,
        Succes,
        CodeNotValid,
        NoOpenPasswordRequest
    }

    /// <summary>
    /// Enumeratie die aangeeft of het aanvragen van een activatiecode voor een nieuw mobiel telefoonnummer gelukt is
    /// </summary>
    public enum ChangeMobilePhoneNumberRequestResultEnum
    {
        UserNotExists,
        Succes,
        ToManyRequests,
        SameNumber,
        IncorrectPassword
    }

    /// <summary>
    /// Enumeratie die aangeeft of het activeren van het nieuwe mobiele nummer gelukt is
    /// </summary>
    public enum ActivateMobilePhoneNumberRequestResultEnum
    {
        UserNotExists,
        Succes,
        CodeNotValid,
        NoOpenMobileNumberRequest
    }

}
